/**
 * 导航栏相关类型定义
 */
export interface Navbar {
    id: string
    parentId?: string | null  // 父级ID
    name: string
    url?: string | null  // 链接地址，分类可为空
    icon?: string
    sortNo: number
    children?: Navbar[]  // 子导航列表
}

/**
 * 创建导航栏请求
 */
export interface CreateNavbarRequest {
    name: string
    url?: string | null  // 链接地址，分类可为空
    description?: string
    icon?: string
    parentId?: string | null  // 父级ID
    sortNo: number
    categoryLevel?: number  // 分类级别
}

/**
 * 更新导航栏请求
 */
export interface UpdateNavbarRequest {
    name: string
    url?: string | null  // 链接地址，分类可为空
    description?: string
    icon?: string
    parentId?: string | null  // 父级ID
    sortNo: number
    categoryLevel?: number  // 分类级别
}

// 分类级别常量
export const CATEGORY_LEVELS = {
    MAIN_CATEGORY: 1,  // 大分类
    SUB_CATEGORY: 2,   // 小分类
    NAV_ITEM: 3        // 导航项
} as const

/**
 * 排序更新项
 */
export interface NavbarSortItem {
    id: string
    sortNo: number
}

/**
 * 批量更新导航栏排序请求
 */
export interface NavbarSortUpdateRequest {
    items: NavbarSortItem[]
}